'\" te
.TH pulse-daemon\&.conf 5 "11 Oct 2011" "SunOS 5.11" "Headers, Tables, and Macros"
.SH "NAME"
pulse-daemon\&.conf \- PulseAudio daemon configuration file
.SH "SYNOPSIS"
.PP
~/\&.pulse/daemon\&.conf
.PP
~/etc/pulse/daemon\&.conf
.SH "DESCRIPTION"
.PP
The PulseAudio sound server reads configuration directives from a file
\fB~/\&.pulse/daemon\&.conf\fR on startup and when that file does
not exist from \fB/etc/pulse/daemon\&.conf\fR\&.  Please note that
the server also reads a configuration script on startup
\fBdefault\&.pa\fR which also contains runtime configuration
directives\&.
.PP
The configuration file is a simple collection of variable declarations\&.  If the
configuration file parser encounters either ; or # it ignores the rest of the
line until its end\&.
.PP
For the settings that take a boolean argument the values true, yes, on and 1
are equivalent, resp\&. false, no, off, 0\&.
.SH "PARAMETERS"
.PP
The following configuration options are supported:
.PP
GENERAL DIRECTIVES
.sp
.ne 2
.mk
\fBdaemonize=\fR
.sp .6
.in +4
Daemonize after startup\&.  Takes a boolean value, defaults to no\&.  The
-\fB-daemonize\fR command line option takes precedence\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBfail=\fR
.sp .6
.in +4
Fail to start up if any of the directives in the configuration script
\fBdefault\&.pa\fR fail\&.  Takes a boolean argument, defaults to
yes\&.  The -\fB-fail\fR command line option takes precedence\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBallow-module-loading=\fR
.sp .6
.in +4
Allow/disallow module loading after startup\&. This is a security feature that if dsabled makes sure that no further modules may be loaded into the PulseAudio
server after startup completed\&. It is recommended to disable this when
system-instance is enabled\&.  Please note that certain features like automatic
hot-plug support will not work if this option is enabled\&.  Takes a boolean
argument, defaults to yes\&.  The -\fB-disallow-module-loading\fR
command line option takes precedence\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBallow-exit=\fR
.sp .6
.in +4
Allow/disallow exit on user request\&.  Defaults to yes\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBresample-method=\fR
.sp .6
.in +4
The resampling algorithm to use\&.  Use one of src-sinc-best-quality,
src-sinc-medium-quality, src-sinc-fastest, src-zero-order-hold, src-linear,
trivial, speex-float-N, speex-fixed-N, ffmpeg\&.  See the documentation of
libsamplerate and speex for explanations of the different src- and speex-
methods, respectively\&.  The method trivial is the most basic algorithm
implemented\&.  If you are tight on CPU consider using this\&.  On the other hand
it has the worst quality of them all\&.  The Speex resamplers take an integer
quality setting in the range 0\&.\&.10 (bad\&.\&.\&.good)\&.  They exist in two flavours:
fixed and float\&.  The former uses fixed point numbers, the latter relies on
floating point numbers\&.  On most desktop CPUs the float point resampler is a
lot faster, and it also offers slightly better quality\&.  See the output of
dump-resample-methods for a complete list of all available resamplers\&.
Defaults to speex-float-3\&.  The -\fB-resample-method\fR command line
option takes precedence\&.  Note that some modules overwrite or allow overwriting
of the resampler to use\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBenable-remixing=\fR
.sp .6
.in +4
If disabled never upmix or downmix channels to different channel maps\&.
Instead, do a simple name-based matching only\&.  Defaults to yes\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBenable-lfe-remixing=\fR
.sp .6
.in +4
If disabeld when upmixing or downmixing ignore LFE channels\&.  When this option
is disabled the output LFE channel will only get a signal when an input LFE
channel is available  as well\&.  If no input LFE channel is available the output
LFE channel will always be 0\&.  If no output LFE channel is available the signal
on the input LFE channel will be ignored\&.  Defaults to no\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBuse-pid-file=\fR
.sp .6
.in +4
Create a PID file in the runtime directory
(\fB$HOME/\&.pulse/*-runtime/pid\fR)\&. If this is enabled you may
use commands like -\fB-kill\fR or -\fB-check\fR\&.  If you
are planning to start more than one PulseAudio process per user, you better
disable this option since it effectively disables multiple instances\&.  Takes a
boolean argument, defaults to yes\&.  The -\fB-use-pid-file\fR command
line option takes precedence\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBcpu-limit=\fR
.sp .6
.in +4
If disabled do not install the CPU load limiter, even on platforms where it is
supported\&.  This option is useful when debugging/profiling PulseAudio to
disable disturbing SIGXCPU signals\&.  Takes a boolean argument, defaults to no\&.
The -\fB-no-cpu-limit\fR command line argument takes precedence\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBsystem-instance=\fR
.sp .6
.in +4
Run the daemon as system-wide instance, requires root priviliges\&.  Takes a
boolean argument, defaults to no\&. The -\fB-system\fR command line
argument takes precedence\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBenable-shm=\fR
.sp .6
.in +4
Enable data transfer via POSIX shared memory\&.  Takes a boolean argument,
defaults to yes\&.  The -\fB-disable-shm\fR command line argument takes
precedence\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBshm-size-bytes=\fR
.sp .6
.in +4
Sets the shared memory segment size for the daemon, in bytes\&.  If left
unspecified or is set to 0 it will default to some system-specific default,
usually 64 MiB\&. Please note that usually there is no need to change this value,
unless you are running an OS kernel that does not do memory overcommit\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBlock-memory=\fR
.sp .6
.in +4
Locks the entire PulseAudio process into memory\&.  While this might increase
drop-out safety when used in conjunction with real-time scheduling this takes
away a lot of memory from  other processes and might hence considerably slow
down your system\&.  Defaults to no\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBflat-volume=\fR
.sp .6
.in +4
Enable \&'flat\&' volumes, i\&.e\&. where possible let the sink volume equal the
maximum of the volumes of the inputs connected to it\&.  Takes a boolean
argument, defaults to yes\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBflat-volume=\fR
.sp .6
.in +4
Enable \&'flat\&' volumes, i\&.e\&. where possible let the sink volume equal the
maximum of the volumes of the inputs connected to it\&.  Takes a boolean
argument, defaults to yes\&.
.sp
.sp 1
.in -4
.PP
SCHEDULING
.sp
.ne 2
.mk
\fBhigh-priority=\fR
.sp .6
.in +4
Renice the daemon after startup to become a high-priority process\&.  This a good
idea if you experience drop-outs during playback\&.  However, this is a certain
security issue, since it works when called SUID root only, or RLIMIT_NICE is
used\&. root is dropped immediately after gaining the nice level on startup, thus
it is presumably safe\&. See
\fBpulseaudio\fR(1)
for more information\&.  Takes a boolean argument, defaults to yes\&.  The
-\fB-high-priority\fR command line option takes precedence\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBrealtime-scheduling=\fR
.sp .6
.in +4
Try to acquire SCHED_FIFO scheduling for the IO threads\&.  The same security
concerns as mentioned above apply\&.  However, if PA enters an endless loop,
realtime scheduling causes a system lockup\&. Thus, realtime scheduling should
only be enabled on trusted machines for now\&.  Please not that only the IO
threads of PulseAudio are made real-time\&.  The controlling thread is left a
normally scheduled thread\&.  Thus enabling the high-priority option is
orthogonal\&.  See
\fBpulseaudio\fR(1)
for more information\&.  Takes a boolean argument, defaults to yes\&. The
-\fB-realtime\fR command line option takes precedence\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBrealtime-priority=\fR
.sp .6
.in +4
The realtime priority to acquire, if realtime-scheduling is enabled\&.  Note:
JACK uses 10 by default, 9 for clients\&. Thus it is recommended to choose the
PulseAudio real-time priorities lower\&.  Some PulseAudio threads might choose a
priority a little lower or higher than the specified value\&.  Defaults to 5\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBnice-level=\fR
.sp .6
.in +4
The nice level to acquire for the daemon, if high-priority is enabled\&.  Note:
on some distributions X11 uses -10 by default\&.  Defaults to -11\&.
.sp
.sp 1
.in -4
.PP
IDLE TIMES
.sp
.ne 2
.mk
\fBexit-idle-time=\fR
.sp .6
.in +4
Terminate the daemon after the last client quit and this time in seconds
passed\&.  Use a negative value to disable this feature\&. Defaults to 20\&.  The
-\fB-exit-idle-time\fR command line option takes precedence\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBscache-idle-time=\fR
.sp .6
.in +4
Unload autoloaded sample cache entries after being idle for this time in
seconds\&.  Defaults to 20\&.  The -\fB-scache-idle-time\fR command line
option takes precedence\&.
.sp
.sp 1
.in -4
.PP
PATHS
.sp
.ne 2
.mk
\fBdl-search-path=\fR
.sp .6
.in +4
The path were to look for dynamic shared objects (DSOs/plugins)\&.  You may
specify more than one path seperated by colons\&. The default path depends on
compile time settings\&.  The -\fB-dl-search-path\fR command line
option takes precedence\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBdefault-script-file=\fR
.sp .6
.in +4
The default configuration script file to load\&.  Specify an empty string for not
loading a default script file\&.  The default behaviour is to load
\fB~/\&.pulse/default\&.pa\fR, and if that file does not exist fall
back to the system wide installed version
\fB/etc/pulse/default\&.pa\fR\&.  If run in system-wide mode the
file \fB/etc/pulse/system\&.pa\fR is used instead\&.  If
-\fBn\fR is passed on the command line or default-script-file= is
disabled the default configuration script is ignored\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBload-default-script-file=\fR
.sp .6
.in +4
Load the default configuration script file as specified in
default-script-file=\&.  Defaults to yes\&.
.sp
.sp 1
.in -4
.PP
LOGGING
.sp
.ne 2
.mk
\fBlog-target=\fR
.sp .6
.in +4
The default log target\&.  Use either stderr, syslog or auto\&.  The latter is
equivalent to sylog in case daemonize is enabled, otherwise to stderr\&.
Defaults to auto\&.  The -\fB-log-target\fR command line option takes
precedence\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBlog-level=\fR
.sp .6
.in +4
Log level, one of debug, info, notice, warning, error\&.  Log messages with a
lower log level than specified here are not logged\&. Defaults to notice\&. The
-\fB-log-level\fR command line option takes precedence\&.  The
-\fBv\fR command line option might alter this setting\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBlog-meta=\fR
.sp .6
.in +4
With each logged message log the code location the message was generated from\&.
Defaults to no\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBlog-time=\fR
.sp .6
.in +4
With each logged messages log the relative time since startup\&.  Defaults to no\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBlog-backtrace=\fR
.sp .6
.in +4
When greater than 0, with each logged message log a code stack trace up the the
specified number of stack frames\&.  Defaults to 0\&.
.sp
.sp 1
.in -4
.PP
RESOURCE LIMITS
.PP
See
\fBgetrlimit\fR(2),
for more information\&.  Set to -1 if PulseAudio shall not touch the resource
limit\&.  Not all resource limits are available on all operating systems\&.
.sp
.ne 2
.mk
\fBrlimit-as=\fR
.in +24n
.rt
Defaults to -1\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-rss=\fR
.in +24n
.rt
Defaults to -1\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-core=\fR
.in +24n
.rt
Defaults to -1\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-data=\fR
.in +24n
.rt
Defaults to -1\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-fsize=\fR
.in +24n
.rt
Defaults to -1\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-nofile=\fR
.in +24n
.rt
Defaults to 256\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-stack=\fR
.in +24n
.rt
Defaults to -1\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-nproc=\fR
.in +24n
.rt
Defaults to -1\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-locks=\fR
.in +24n
.rt
Defaults to -1\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-sigpending=\fR
.in +24n
.rt
Defaults to -1\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-msgqueue=\fR
.in +24n
.rt
Defaults to -1\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-memlock=\fR
.in +24n
.rt
Defaults to 16 KiB\&.  Please note that the JACK client libraries may require
more locked memory\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-nice=\fR
.in +24n
.rt
Defaults to 31\&.  Please make sure that the default nice level as configured
with nice-level fits in this resource limit, if high-priority is enabled\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-rtprio=\fR
.in +24n
.rt
Defaults to 9\&.  Please make sure that the default real-time priority level as
configured with realtime-priority= fits in this resource limit, if
realtime-scheduling is enabled\&.  The JACK client libraries require a real-time
priority of 9 by default\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBrlimit-rttime=\fR
.in +24n
.rt
Defaults to 1000000\&.
.sp
.sp 1
.in -24n
.PP
DEFAULT DEVICE SETTINGS
.PP
Most drivers try to open the audio device with these settings and then fall
back to lower settings\&.  The default settings are CD quality: 16bit native
endian, 2 channels, 44100 Hz sampling\&.
.sp
.ne 2
.mk
\fBdefault-sample-format=\fR
.sp .6
.in +4
The default sampling format\&.  Specify one of u8, s16le, s16be, s24le, s24be,
s24-32le, s24-32be, s32le, s32be float32le, float32be, ulaw, alaw\&.  Depending
on the endianess of the CPU the formats s16ne, s16re, s24ne, s24re, s24-32ne,
s24-32re, s32ne, s32re, float32ne, float32re (for native, resp\&. reverse endian)
are available as aliases\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBdefault-sample-rate=\fR
.sp .6
.in +4
The default sample frequency\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBdefault-sample-channels=\fR
.sp .6
.in +4
The default number of channels\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBdefault-sample-map=\fR
.sp .6
.in +4
The default channel map\&.
.sp
.sp 1
.in -4
.PP
DEFAULT FRAGMENT SETTINGS
.PP
Some hardware drivers require the hardware playback buffer to be subdivided
into several fragments\&.  It is possible to change these buffer metrics for
machines with high scheduling latencies\&.  Not all possible values that may be
configured here are available in all hardware\&.  The driver will to find the
nearest setting supported\&.  Modern drivers that support timer-based scheduling
ignore these options\&.
.sp
.ne 2
.mk
\fBdefault-fragments=\fR
.sp .6
.in +4
The default number of fragments\&.  Defaults to 4\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBdefault-fragment-size-msec=\fR
.sp .6
.in +4
The duration of a single fragment\&.  Defaults to 25ms (i\&.e\&. the total buffer is
thus 100ms long)\&.
.sp
.sp 1
.in -4
.PP
DEFAULT DEFERRED VOLUME SETTINGS
.PP
With the flat volume feature enabled, the sink HW volume is set to the same
level as the highest volume input stream\&.  Any other streams (with lower
volumes) have the appropriate adjustment applied in SW to bring them to the
correct overall level\&.  Sadly hadware mixer changes cannot be timed accurately
and thus this change of volumes can somtimes cause the resulting output sound
to be momentarily too loud or too soft\&.  So to ensure SW and HW volumes are
applied concurrently without any glitches, their application needs to be
synchronized\&.  The sink implementation needs to support deferred volumes\&. The
following parameters can be used to refine the process\&.
.sp
.ne 2
.mk
\fBenable-deferred-volume=\fR
.sp .6
.in +4
Enable deferred volume for the sinks that support it\&.  This feature is enabled
by default\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBdeferred-volume-safety-margin-usec=\fR
.sp .6
.in +4
The amount of time (in usec) by which the HW volume increases are delayed and
HW volume decreases are advanced\&.  Defaults to 8000 usec\&.
.sp
.sp 1
.in -4
.sp
.ne 2
.mk
\fBdeferred-volume-extra-delay-usec=\fR
.sp .6
.in +4
The amount of time (in usec) by which HW volume changes are delayed\&.  Negative
values are also allowed\&.  Defaults to 0\&.
.sp
.sp 1
.in -4
.SH "ENVIRONMENT VARIABLES"
.PP
See \fBenviron\fR(5) for descriptions of the following environment
variables:
.sp
.ne 2
.mk
\fBPULSE_SCRIPT\fR
.in +24n
.rt
Specify the default CLI script to run after startup\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBPULSE_CONFIG\fR
.in +24n
.rt
Specify the default daemon configuration file to use\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBPULSE_DLPATH\fR
.in +24n
.rt
Colon separated list of paths where to look for modules\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fBPULSE_NO_SIMD\fR
.in +24n
.rt
Disable SIMD optimizations (e\&.g\&. MMX, SSE, NEON)\&.
.sp
.sp 1
.in -24n
.SH "FILES"
.PP
The following files are used by this application:
.sp
.ne 2
.mk
\fB\fB/etc/pulse/daemon\&.conf\fR\fR
.in +24n
.rt
System configuration file\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fB\fB~/\&.pulse/daemon\&.conf\fR\fR
.in +24n
.rt
User configuration file\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fB\fB/etc/pulse/default\&.pa\fR\fR
.in +24n
.rt
System configuration which specifies which PulseAudio modules to load when
PulseAudio is not run in system-wide mode\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fB\fB/etc/pulse/system\&.pa\fR\fR
.in +24n
.rt
System configuration which specifies which PulseAudio modules to load when
PulseAudio is run in system-wide mode\&.
.sp
.sp 1
.in -24n
.sp
.ne 2
.mk
\fB\fB~/\&.pulse/default\&.pa\fR\fR
.in +24n
.rt
User configuration which specifies which PulseAudio modules to load when
PulseAudio is not run in system-wide mode\&.
.sp
.sp 1
.in -24n
.SH "ATTRIBUTES"
.PP
See \fBattributes\fR(5)
for descriptions of the following attributes:
.sp
.TS
tab() allbox;
cw(2.750000i)| cw(2.750000i)
lw(2.750000i)| lw(2.750000i).
ATTRIBUTE TYPEATTRIBUTE VALUE
AvailabilitySUNWpulseaudio
Interface stabilityVolatile
.TE
.sp
.SH "SEE ALSO"
.PP
\fBpacmd\fR(1),
\fBpulseaudio\fR(1),
\fBdefault\&.pa\fR(5)
\fBpulse-client\&.conf\fR(5)
.SH "NOTES"
.PP
Written by the PulseAudio Developers at) 0pointer (dot) net>;
PulseAudio is available from http://www\&.pulseaudio\&.org/\&.
...\" created by instant / solbook-to-man, Tue 27 Jan 2015, 17:23
